<template>
  <div class="page-container page-container-detail-page">
    <div class="breadcrumb">
      <el-breadcrumb separator-class="el-icon-arrow-right">
        <el-breadcrumb-item>营销中心</el-breadcrumb-item>
        <el-breadcrumb-item>通用促销</el-breadcrumb-item>
        <el-breadcrumb-item>支付立减活动详情</el-breadcrumb-item>
      </el-breadcrumb>
    </div>
    <!--审核弹框-->
    <el-dialog
      title="管理员备注"
      class="el-dialog-style"
      :visible.sync="dialogVisibleAdmin"
      :close-on-click-modal="false"
    >
      <el-form :model="adminDataForm" label-width="100%" :size="size" label-position="right" inline ref="adminDataForm"
               :rules="adminDataFormRules">
        <el-form-item class="textarea" prop="auditRemark">
          <el-input
            type="textarea"
            placeholder="请输入备注"
            v-model="adminDataForm.auditRemark"
            :rows="4" clearable
          ></el-input>
        </el-form-item>
      </el-form>
      <div slot="footer" class="dialog-footer" style="text-align:center">
        <el-button class="cancelButton" :size="size" @click.native="submitFormAdminNotPass">不通过</el-button>
        <el-button class="searchButton" :size="size" @click.native="submitFormAdmin">通过</el-button>
      </div>
    </el-dialog>

    <!--工具栏-->
    <div class="page-container-detail">
      <p class="pageName">支付立减活动详情</p>
      <div class="toolbar">
        <el-form :inline="true" :model="filters" :size="size" ref="filters" class="border">
          <el-form-item>
            <span class="color333 font18">活动名称：</span>
            <span class="color333 font18">{{activityData.promName}}</span>
          </el-form-item>
          <el-form-item>
            <span class="color333 font18">活动ID：</span>
            <span class="color333 font18">{{activityData.promotionCode}}</span>
          </el-form-item>
          <el-form-item>
            <span class="color333 font18">当前状态：</span>
            <span class="color333 font18" v-if="activityData.status == 9">草稿状态</span>
            <span class="color333 font18" v-else-if="activityData.status == 1">待提交</span>
            <span class="color333 font18" v-else-if="activityData.status == 2">待审核</span>
            <span class="color333 font18" v-else-if="activityData.status == 3">未开始</span>
            <span class="color333 font18" v-else-if="activityData.status == 4">审核不通过</span>
            <span class="color333 font18" v-else-if="activityData.status == 5">进行中</span>
            <span class="color333 font18" v-else-if="activityData.status == 6">已过期</span>
            <span class="color333 font18" v-else-if="activityData.status == 7">已关闭</span>
            <span class="color333 font18" v-else-if="activityData.status == 8">已结束</span>
            <span class="color333 font18" v-else>未知状态</span>
          </el-form-item>
        </el-form>
        <el-form
          :inline="true"
          :model="filters"
          :size="size"
          ref="filters"
          style="text-align: center;"
          v-if="activityData.editFlag"
        >
          <el-row class="search-button">
            <!--<el-button type="primary">查看营销报告</el-button>-->
            <span v-if="activityData.status == 2">
              <div >
                <kt-button
                  class="searchButton"
                  :size="size"
                  @click="shenheHuodong(1)"
                  label="审核"
                />
              </div>
            </span>
            <span v-if="activityData.status == 1 || activityData.status == 4">
              <div >
                <kt-button
                  class="searchButton"
                  :size="size"
                  @click="shenheHuodong(0)"
                  label="提交审核"
                />
              </div>
            </span>
          </el-row>
        </el-form>
      </div>
      <div class="tab-container tab-container-noPadding">
        <el-tabs type="border-card">
          <el-tab-pane label="促销规则">
            <div>
              <form class="form-horizontal">
                <div class="basicInfo">基本设置：</div>
                <div class="form-group">
                  <!--活动名称-->
                  <label
                    class="color333 font16 ml8"
                    ng-show="promotionDetailContent.promotionMethod != 17"
                  >活动名称：</label>
                  <div class="color333">{{activityData.promName}}</div>
                </div>
                <!-- <div class="line line-dashed b-b line-lg ng-scope"></div> -->
                <div class="form-group">
                  <!--活动时间-->
                  <label class="color333 font16 ml8">活动时间：</label>
                  <div class="color333">{{activityData.startTime}} 至 {{activityData.endTime}}</div>
                </div>
                <div class="line line-dashed b-b line-lg ng-scope"></div>
                <div class="form-group">
                  <!--活动名称-->
                  <label
                    class="color333 font16 ml8"
                  >活动搜索词：</label>
                  <div class="color333">{{activityData.searchKeyword}}</div>
                </div>
                <div class="form-group">
                  <!--活动名称-->
                  <label
                    class="color333 font16 ml8"
                  >活动费用预算：</label>
                  <div class="color333">{{activityData.budget}} 元</div>
                </div>
                <div class="form-group">
                  <!--活动名称-->
                  <label
                    class="color333 font16 ml8"
                  >预警比例：</label>
                  <div class="color333">{{activityData.warningNum}} %</div>
                </div>
                <div class="line line-dashed b-b line-lg ng-scope"></div>
                <div class="basicInfo">活动规则：</div>
                <div class="form-group ng-scope">
                  <!--活动类型(促销类型)-->
                  <label class="color333 font16 ml8">活动类型：</label>
                  <div class="color333">
                    <div v-show="payFrontPromType1">we2000    立减{{contentValue1}}元</div>
                    <div v-show="payFrontPromType2">微信支付  立减{{contentValue2}}元</div>
                    <div v-show="payFrontPromType3">微众卡    立减{{contentValue3}}元</div>
                    <div v-show="payFrontPromType4">企业购    立减{{contentValue4}}元</div>
                  </div>
                </div>
                <!-- <div class="line line-dashed b-b line-lg ng-scope"></div> -->
                <div class="form-group flexBox">
                  <label class="color333 font16 ml8 titleText">活动描述：</label>
                  <div class="color333">{{activityData.description}}</div>
                </div>

                <!-- <div class="basicInfo ng-scope">交易规则：</div>
                <div class="line line-dashed b-b line-lg ng-scope" v-if="false"></div>
                <div class="form-group ng-scope" >
                  <label class="color333 font16 ml8">超限规则：</label>
                  <div class="color333">
                    <span v-if="activityData.overLimitRule==1">按原价购买</span>
                    <span v-else>不可购买</span>
                  </div>
                </div>
                <div class="form-group"  v-if="deptType != 3">
                  <label class="color333 font16 ml8">是否分摊：</label>
                  <div class="color333">
                    <span v-if="parseInt(activityData.costAllocationFlag) == 0">否</span>
                    <span
                      v-if="parseInt(activityData.costAllocationFlag) == 1"
                    >是</span>
                  </div>
                </div> -->
                <!-- <div class="line line-dashed b-b line-lg ng-scope"></div> -->
                <div class="basicInfo">参与条件：</div>
                <div class="line line-dashed b-b line-lg ng-scope"></div>
                <div ng-controller="activitiObjDetailCtrl" class="ng-scope">
                  <div class="form-group">
                    <label class="color333 font16 ml8">新老用户：</label>
                    <div class="color333">
                      <span
                        v-for="(item,index) in (activityData.proUserType + '').split(',')"
                        :key="index"
                        class="ng-binding ng-scope"
                      >{{getProUserType(item)}} &nbsp;</span>
                    </div>
                  </div>
                  <div class="form-group" v-if="activityData.memTypes != null">
                    <label class="color333 font16 ml8">会员类型：</label>
                    <div class="color333">
                      <span
                        v-for="(item,index) in (activityData.memTypes + '').split(
                          ','
                        )"
                        :key="index"
                        class="ng-binding ng-scope"
                      >
                        <span v-if="item == 1">
                        普通会员 &nbsp;
                        </span>
                        <span v-if="item == 2">
                        VIP会员 &nbsp;
                        </span>
                        <span v-if="item == 3">
                        分期会员 &nbsp;
                        </span>
                      </span>
                    </div>
                  </div>
                  <div class="form-group" v-if="activityData.channelId != null">
                    <label class="color333 font16 ml8">渠道入口：</label>
                    <div class="color333">
                      <span
                        v-for="(item,index) in (activityData.channelId + '').split(
                          ','
                        )"
                        :key="index"
                        class="ng-binding ng-scope"
                      >
                        <span v-if="item == 1">
                        企业微信 &nbsp;
                        </span>
                        <span v-if="item == 2">
                        xxx &nbsp;
                        </span>
                        <span v-if="item == 2">
                        yyy &nbsp;
                        </span>
                      </span>
                    </div>
                  </div>

                  <div
                    class="form-group ng-scope"
                    ng-if="promotionDetailContent.promotionType != 12"
                  >
                    <!--备注-->
                    <label class="color333 font16 ml40">备注：</label>
                    <p v-html="activityData.remark">{{activityData.remark}}</p>
                  </div>
                </div>
              </form>
            </div>
          </el-tab-pane>
          <el-tab-pane label="参与商品">
              <el-tabs v-model="productStatusTabs">
                  <el-tab-pane :label="noMutexProductLabel" name="1">
                    <el-table
                      :data="merchantProductTableData"
                      :size="size"
                      row-key="id"
                      default-expand-all
                      :tree-props="{children: 'children', hasChildren: 'hasChildren'}"
                      class="tableStyle"
                    >
                      <el-table-column prop="mpCode" label="商品编码"  align="left"></el-table-column>
                      <el-table-column prop="productName" label="商品名称"  sortable align="center">
                        <template slot-scope="scope">
                          <span>{{ scope.row.mpName}}</span>
                        </template>
                      </el-table-column>
                      <el-table-column prop="categoryName" label="商品分类" align="center">
                        <template slot-scope="scope">
                          <span>{{ scope.row.categoryName}}</span>
                        </template>
                      </el-table-column>
                      <el-table-column prop="stock" label="库存" align="center">
                        <template slot-scope="scope">
                          <span>{{ scope.row.stock}}</span>
                        </template>
                      </el-table-column>
                      <el-table-column prop="storeName" label="所属商户" align="center">
                        <template slot-scope="scope">
                          <span>{{ scope.row.storeName}}</span>
                        </template>
                      </el-table-column>
                      <el-table-column prop="salePrice" label="统一零售价（元）" align="center" width="200">
                        <template slot-scope="scope">
                          <span>{{ scope.row.salePrice}}</span>
                        </template>
                      </el-table-column>
                    </el-table>
                    <!--分页栏-->
                    <div class="toolbar t_r">
                      <el-pagination
                        @size-change="handleSizeChangeMerchantProductTableData"
                        @current-change="handleCurrentChangeMerchantProductTableData"
                        :current-page="merchantProductSearchForm.start"
                        :page-sizes="[10, 20, 30, 40]"
                        :page-size="merchantProductSearchForm.limit"
                        layout="total, sizes, prev, pager, next, jumper"
                        :total="merchantProductTableDataTotal"
                      ></el-pagination>
                    </div>
                  </el-tab-pane>
                  <el-tab-pane :label="mutexProductLabel" name="2">
                    <div>
                      <el-table :data="mutexProductList" row-key="id" default-expand-all :tree-props="{children: 'children', hasChildren: 'hasChildren'}" style="width: 100%" @selection-change="handleSelectionChange" class="tableStyle">
                        <el-table-column type="selection" width="55"></el-table-column>
                        <el-table-column prop="mpCode" label="商品编码" width="200"  align="left"></el-table-column>
                        <el-table-column prop="mpName" label="商品名称" width="200"></el-table-column>
                        <el-table-column prop="categoryName" label="商品分类" width="200"></el-table-column>
                        <el-table-column prop="stock" label="库存" width="200"></el-table-column>
                        <el-table-column prop="salePrice" label="原价（元）" width="200"></el-table-column>
                        <el-table-column prop="storeName" label="所属商户" width="200"></el-table-column>
                        <el-table-column align="center" fixed="right" label="操作" width="390">
                          <template slot-scope="scope">
                        <el-button @click="getMutexInfo(scope.row)" v-if="scope.row.typeOfProduct==20" type="text" class="textButton" size="small">查看详情</el-button>
                        <!-- <el-button @click="renewAdd(scope.row)" v-if="scope.row.typeOfProduct==10 || scope.row.typeOfProduct==20" type="text" class="textButton" size="small">重新添加</el-button> -->
                          </template>
                        </el-table-column>
                      </el-table>
                      <div class="toolbar t_r" >
                        <el-pagination
                          @size-change="handleSizeChangeMutexProductList"
                          @current-change="handleCurrentChangeMutexProductList"
                          :current-page="mutexProductForm.start"
                          :page-sizes="[10, 20, 30, 40]"
                          :page-size="mutexProductForm.limit"
                          layout="total, sizes, prev, pager, next, jumper"
                          :total="mutexProductTotal"
                        >
                        </el-pagination>
                      </div>
                    </div>
                  </el-tab-pane>
              </el-tabs>
          </el-tab-pane>
        </el-tabs>
      </div>
    </div>

    <!-- 互斥活动详情 -->
    <el-dialog :visible.sync="mutexPromotionVisible" title="互斥活动详情"  :close-on-click-modal="false">
      <div>
        <el-table :data="mutexPromotionList" ref="multipleTable" :row-class-name="tableRowClassName"  :size="size">
          <el-table-column prop="promotionCode" width="280" label="互斥活动编码" sortable align="center"></el-table-column>
          <el-table-column prop="promName"  width="150" label="互斥活动名称" align="center">
            <template slot-scope="scope">
              <el-button @click="linkInfoByMutexProduct(scope.row.promotionId,scope.row.promType)" type="text" class="textButton" size="small">{{scope.row.promName}}</el-button>
            </template>
          </el-table-column>
          <el-table-column prop="goodsCategory"  width="360" label="互斥活动时间" align="center">
            <template slot-scope="scope">
                <span>{{scope.row.startTime}} - {{scope.row.endTime}}</span>
              </template>
          </el-table-column>
          <el-table-column prop="storeName" label="活动状态" align="center" width="200">
            <template slot-scope="scope">
              <span class="color333 font18" v-if="scope.row.status == 0">待提交</span>
              <span class="color333 font18" v-else-if="scope.row.status == 1">待提交</span>
              <span class="color333 font18" v-else-if="scope.row.status == 2">待审核</span>
              <span class="color333 font18" v-else-if="scope.row.status == 3">未开始</span>
              <span class="color333 font18" v-else-if="scope.row.status == 4">审核不通过</span>
              <span class="color333 font18" v-else-if="scope.row.status == 5">进行中</span>
              <span class="color333 font18" v-else-if="scope.row.status == 6">已过期</span>
              <span class="color333 font18" v-else-if="scope.row.status == 7">已关闭</span>
              <span class="color333 font18" v-else-if="scope.row.status == 8">已结束</span>
              <span class="color333 font18" v-else-if="scope.row.status == 9">活动草稿</span>
            </template>
          </el-table-column>
          <el-table-column prop="creatorName" label="创建人" align="center" width="200"></el-table-column>
          <el-table-column prop="deptName"  label="创建组织" align="center" width="200"></el-table-column>
        </el-table>
        <!--分页栏-->
        <div class="toolbar t_r">
          <el-pagination
            @size-change="mutexPromotionListSizeChange"
            @current-change="mutexPromotionListCurrentChange"
            :current-page="mutexPromotionForm.start"
            :page-sizes="[10, 20, 30, 40]"
            :page-size="mutexPromotionForm.limit"
            layout="total, sizes, prev, pager, next, jumper"
            :total="mutexPromotionListTotal"
          ></el-pagination>
        </div>
      </div>
      <div slot="footer" class="dialog-footer t_c">
        <el-button class="searchButton" :size="size" @click.native="mutexPromotionVisible = false">关闭</el-button>
      </div>
    </el-dialog>
  </div>
</template>

<script>
import marketRequest from "@/market/request/marketRequest";
import KtButton from "@/views/Core/KtButton";
import { format } from "@/utils/datetime";
import TableColumnFilterDialog from "@/views/Core/TableColumnFilterDialog";
import { darkmagenta } from "color-name";
import tabPane from "./components/TabPaneCreateGroupon";
import qs from "qs";
import {
  front_prom_types,
  promTypeConverter,
  frontPromTypeConverter,
  channelCodeConverter,
  proPlatformConverter,
  proUserTypeConverter,
  proMemberTypeConverter,
  proMemberLevelConverter
} from "@/market/dict/marketDict";

export default {
  name: "Tab",
  components: {
    tabPane,
    KtButton,
    TableColumnFilterDialog
  },
  data() {
    return {
      deptType: localStorage.getItem("deptType"), //当前登录用户所属组织类型
      merchantProductTableData: [],
      merchantProductTableDataTotal: 0,
      merchantProductSearchForm: {
        promotionId: this.promotionId,
        merchantId: null,
        mpCode: null,
        mpName: null,
        categoryName: null,
        start: 1,
        limit: 10
      },
      tableDataData: [],
      adminDataForm:{
        auditRemark:""
      },
      adminDataFormRules: {
        auditRemark: [
          { required: true, message: "审核意见不能为空", trigger: "blur" }
        ]
      },
      dialogVisibleAdmin: false,
      shenhe: 0,
      size: "small",
      filters: {},
      multipleSelection: [],
      businessList: [{ id: "001", name: "张小二服饰", type: "自营商家" }],
      businessListTotal: 0,
      businessForm: {
        promotionId: this.promotionId,
        merchantType: "1",
        pageNo: 1,
        pageSize: 10
      },
      shopList: [{ id: "161616", name: "张小二bbc店铺", type: "直营" }],
      shopForm: {
        promotionId: this.promotionId,
        merchantType: "2",
        pageNo: 1,
        pageSize: 10
      },
      shopListTotal: 0,
      promotionId: this.$route.params.id,
      activityData: {},

      productStatusTabs: "1",
      noMutexProductLabel:"生效商品（0）",
      mutexProductForm:{
        promotionId: this.$route.params.id,
        mutexFlag:1,//互斥标识
        start: 1,
        limit: 10
      },
      mutexProductList:[],
      mutexProductTotal:0,
      mutexProductLabel:"互斥商品（0）",
      mutexPromotionForm:{
        promotionId: this.$route.params.id,
        start:1,
        limit:10,
      },
      mutexPromotionList:[],
      mutexPromotionListTotal:0,
      mutexPromotionVisible:false,

      payFrontPromType1: '',
      payFrontPromType2: '',
      payFrontPromType3: '',
      payFrontPromType4: '',
      contentValue1:'',
      contentValue2:'',
      contentValue3:'',
      contentValue4:'',

    };
  },
  created: function() {
    this.getDetailById();
    // this.mainMerchantFormFind();
    // this.mainStoreTableDataFormFind();
    // this.getMerchantProductList();
    this.getMutexProductList();
    // this.getChildList();
  },
  methods: {
    getDetailById(){
      let _this = this;
      let callback = res => {

        if (res.code == "0000") {
          _this.activityData = res.data;
          _this.payFrontPromType1 = res.data.payFrontPromType.split(",").includes('29');
          _this.payFrontPromType2 = res.data.payFrontPromType.split(",").includes('30');
          _this.payFrontPromType3 = res.data.payFrontPromType.split(",").includes('31');
          _this.payFrontPromType4 = res.data.payFrontPromType.split(",").includes('32');
          
          let promotionRules = res.data.promotionRules;
          if(null!=promotionRules&&promotionRules.length>0){
            for(var i = 0; i < promotionRules.length;i++){
              if(29 == promotionRules[i].conditionType){
                _this.contentValue1 = promotionRules[i].contentValue;
              }else if(30 == promotionRules[i].conditionType){
                _this.contentValue2 = promotionRules[i].contentValue;
              }else if(31 == promotionRules[i].conditionType){
                _this.contentValue3 = promotionRules[i].contentValue;
              }else if(32 == promotionRules[i].conditionType){
                _this.contentValue4 = promotionRules[i].contentValue;
              }
            }
          }
          _this.payFrontPromType = res.data.payFrontPromType.contentValue;

          
        } else {
          //alert("获取促销详情失败");
        }
      };
      this.promotionId = this.$route.params.id;
      let params = { id: this.$route.params.id };
      this.utils.request.promotionDetailById(params, callback);
    },
    handleCurrentChangeMerchantProductTableData(pageNum) {
      this.merchantProductSearchForm.start = pageNum;
      this.getMerchantProductList();
    },
    handleSizeChangeMerchantProductTableData(val) {
      this.merchantProductSearchForm.limit = val;
      this.merchantProductSearchForm.start = 1;
      this.getMerchantProductList();
    },
    // getProductList() {
    //   let this_ = this;
    //   let callback = function(res) {
    //     if (res.code == "0000") {
    //       this_.merchantProductTableData = res.data.rows;
    //       this_.merchantProductTableDataTotal = res.data.total;
    //     } else {
    //     }
    //   };
    //   this.merchantProductSearchForm.promotionId = this.promotionId;
    //   marketRequest.getProductListV3(this.merchantProductSearchForm, callback);
    // },

    // 换页刷新
    shophandleSizeChange: function(pageSize) {
      this.shopForm.pageSize = pageSize;
      this.shopForm.pageNo = 1;
      this.mainStoreTableDataFormFind();
    },
    shophandleCurrentChange(pageNum) {
      this.shopForm.pageNo = pageNum;
      this.mainStoreTableDataFormFind();
    },
    // 换页刷新
    businesshandleSizeChange: function(pageSize) {
      this.businessForm.pageSize = pageSize;
      this.businessForm.pageNo = 1;
      this.mainMerchantFormFind();
    },
    businesshandleCurrentChange(pageNum) {
      this.businessForm.pageSize = pageSize;
      this.mainMerchantFormFind();
    },
    submitFormAdminNotPass() {
      this.$refs.adminDataForm.validate(auditRemarkE => {
        if (auditRemarkE) {
          let this_ = this;
          this.dialogVisibleAdmin = false;

          let callback = res => {
            this_.activityData.status = 4;

          };
          this.adminDataForm.id = this.promotionId;
          this.adminDataForm.status = 4;
          this.utils.request.promotionUpdate(this.adminDataForm, callback);
        }
      });

      //this.shenhe = 0;
    },
    submitFormAdmin() {
      let this_ = this;
      this.dialogVisibleAdmin = false;

      let callback = res => {
        // this_.activityData.status = 11;
        //
        this_.getDetailById();
      };
      this.adminDataForm.id = this.promotionId;
      this.adminDataForm.status = 11;
      this.utils.request.promotionUpdate(this.adminDataForm, callback);
    },

    resetFormSearch(formName) {
      if (this.$refs[formName] != undefined) {
        this.$refs[formName].resetFields();
      }
    },

    shenheHuodong(flag) {
      this.resetFormSearch("adminDataForm");
      let this_ = this;
      if (flag == 0) {
        this.$confirm("确认提交审核？", "提示", {
          type: "warning",
          closeOnClickModal: false,
        })
          .then(() => {
            //this.shenhe = 1;
            let callback = res => {
              if (res.code == "0000") {
                this_.activityData.status = 2;
                //this_.shenhe = 0;
              } else if (res.code == "0001") {
                that.$message({ message: res.msg, type: "error" });
              }
            };
            let param = {};
            param.id = this.promotionId;
            param.status = 2;
            this.utils.request.reviewPromotion(param, callback);
          })
          .catch(() => {});
      } else {
        //this.shenhe = 2;
        this.dialogVisibleAdmin = true;
        this.adminDataForm.auditRemark = null;
      }
    },

    handleSelectionChange(val) {
      this.multipleSelection = val;
    },
    revokeProduct() {
      let this_ = this;
      let callback = function(res) {
        if (res.code == "0000") {
          this_.getMerchantProductList();
        } else {
          //alert("修改失败");
        }
      };
      if (this.multipleSelection.length > 0) {
        let ids = this.multipleSelection.map(item => item.id);
        this.utils.request.promotionRevokeProduct({ mpIds: ids }, callback);
      } else {
        this.$message({
          message: "操作失败, 请选择要撤出的商品",
          type: "error"
        });
      }
    },
    createPage() {
      this.$router.push("/CreatePromotion");
    },
    getProPlatform(code) {
      return proPlatformConverter(code);
    },
    getProUserType(code) {
      return proUserTypeConverter(code);
    },
    getChannelCodes(code) {
      let item = this.channelList.find(function(item, index) {
        return item.id == code;
      });
      return typeof item == "undefined" ? "" : item.childName;
    },
    getFrontPromType(code) {
      // return frontPromTypeConverter(code);
      return front_prom_types.filter(e => {
        return e.code == "payment_reduction";
      });
    },
    getProMemberType(code) {
      return proMemberTypeConverter(code);
    },
    getProMemberLevel(code) {
      return proMemberLevelConverter(code);
    },
    getMerchantOrStoreList() {
      alert("aaa");
    },
    //查询绑定关系的商家
    mainMerchantFormFind() {
      var this_ = this;
      //let params = { promotionId: this.promotionId, merchantType: "1" };
      this.businessForm.promotionId = this.promotionId;
      this.utils.request.promotionMerchantList(this.businessForm, function(
        res
      ) {
        if (res.code == "0000") {
          this_.businessList = res.data.list.map((ele, index) => {
            let merchant = {};
            merchant.id = ele.orgNumber;
            merchant.name = ele.merchantName;
            merchant.type = ele.merchantTypeManager == "1" ? "自营商家" : "第三方商户";
            return merchant;
          });
          this_.businessListTotal = res.data.totalCount;
        }
      });
    },
    //查询绑定关系的店铺
    mainStoreTableDataFormFind() {
      //let params = { promotionId: this.promotionId, merchantType: "2" };
      var this_ = this;
      this.shopForm.promotionId = this.promotionId;
      this.utils.request.promotionMerchantList(this.shopForm, function(res) {
        if (res.code == "0000") {
          this_.shopList = res.data.list.map((ele, index) => {
            let store = {};
            store.id = ele.storecode;
            store.name = ele.storename;
            store.type = ele.storeType == "1" ? "线上店铺" : "线下店铺";
            store.merchantName = ele.merchantName;
            return store;
          });
          this_.shopListTotal = res.data.totalCount;
        }
      });
    },

    /**
     * 查询生效商品
     */
    getMerchantProductList() {
      var this_ = this;
      this.merchantProductSearchForm.promotionId = this.$route.params.id;
      marketRequest.getProductListV3(this.merchantProductSearchForm, res => {
        if (res.code == "0000") {
          this_.merchantProductTableData = res.data.rows;
          this_.merchantProductTableDataTotal = res.data.total;
          if(this_.merchantProductTableDataTotal>9999){
            this_.noMutexProductLabel = "生效商品（9999+）";
          }else{
            this_.noMutexProductLabel = "生效商品（"+res.data.totalCount+"）";
          }
        }
      });
    },

    /**
     * 查询互斥商品
     */
    getMutexProductList() {
      var this_ = this;
      this.mutexProductForm.promotionId = this.$route.params.id;
      marketRequest.getProductListV3(this.mutexProductForm, res => {
        if (res.code == "0000") {
          this_.mutexProductList = res.data.rows;
          this_.mutexProductTotal = res.data.total;
          if(this_.mutexProductTotal>9999){
            this_.mutexProductLabel = "互斥商品（9999+）";
          }else{
            this_.mutexProductLabel = "互斥商品（"+res.data.totalCount+"）";
          }
        }
      });
    },
    /**
     * 每页条数改变触发
     */
    handleSizeChangeMutexProductList(val){
      this.mutexProductForm.limit = val;
      this.mutexProductForm.start = 1;
      this.getMutexProductList();
    },
    /**
     * 换页刷新
     */
    handleCurrentChangeMutexProductList(val){
      this.merchantProductSearchForm.start = val;
      this.getMutexProductList();
    },
    /**
     * 互斥商品查看详情
     */
    getMutexInfo(row){
      let that = this;
      this.mutexPromotionForm.promotionMerchantProductId = row.id;
      this.mutexPromotionForm.start = 1;
      this.mutexPromotionForm.limit = 10;
      this.getPromotionMutexListByProductId();
    },
    getPromotionMutexListByProductId(){
      let that = this;
      this.utils.request.getPromotionMutexListByProductId(this.mutexPromotionForm,res=>{
        if(res.code=='0000'){
            that.mutexPromotionList = res.data.rows;
            that.mutexPromotionListTotal = res.data.total;
            that.mutexPromotionVisible = true;
        }
      });
    },

    //table的双色条纹
    tableRowClassName({ row, rowIndex }) {
      if (rowIndex === 1) {
        return "warning-row";
      } else if (rowIndex === 3) {
        return "success-row";
      }
      return "";
    },
    /**
     * 每页条数改变触发
     */
    mutexPromotionListSizeChange(val){

      this.mutexPromotionForm.limit = val;
      this.mutexPromotionForm.start = 1;
      this.getPromotionMutexListByProductId();
    },
    /**
     * 换页刷新
     */
    mutexPromotionListCurrentChange(val){

      this.mutexPromotionForm.start = val;
      this.getPromotionMutexListByProductId();
    },

    /**
     * 互斥商品重新添加
     */
    renewAdd(row){

      let that = this;
      let param = {};
      var productIdList = [];
      param.promotionId = row.promotionId;
      param.promotionType = 1;

      if(row.typeOfProduct == '10'){
          //spu
          row.children.forEach(item=>{
            productIdList.push(item.id);
          })
      }else if(row.typeOfProduct == '20'){
        productIdList.push(row.id);
      }

      param.productIdList = productIdList;
      this.utils.request.renewAddMutexProduct(param,res=>{
        if(res.code=='0000'){
          that.getMutexProductList();
          that.getMerchantProductList();

          let data = res.data;
          if(data.businessCode == '0001'){
            this.$message({message: data.businessMsg, type: "success"});
          }else if(data.businessCode == '0002'){
            this.$message({message:data.businessMsg, type: "error"})
          }else if(data.businessCode == '0003'){
            this.$alert(data.businessMsg, '提示', {
              confirmButtonText: '知道了',
              callback: action => {}
            });
          }

        }
      });
    },
    /**
     * 点击活动名称跳转详情
     */
    linkInfoByMutexProduct(promotionId,type){
      if(type == 1){
        this.$router.push({ path: "/SinglePromotionDetail/" + promotionId + "/0"});
        //this.$router.push(`/SinglePromotionDetail?id=${promotionId}&auth=0`);
      }else if(type == 2){
        this.$router.push(`/FullNumPromotionDetailNew?id=${promotionId}&auth=0`);
      }else if(type == 3){
        this.$router.push({ path: "/FullPromotionDetailNew/" + promotionId + "/0"});
        //this.$router.push(`/FullPromotionDetailNew?id=${promotionId}&auth=0`);
      }else if(type == 4){
        this.$router.push(`/SeckillDetail?promotionId=${promotionId}`);
      }else if(type == 5){
        this.$router.push({ path: "/GiftPromotionDetail/" + promotionId + "/0"});
        //this.$router.push(`/GiftPromotionDetail?id=${promotionId}&auth=0`);
      }else if(type == 6){
        this.$router.push({ path: "/ComplexPromotionInfo/" + promotionId});
      }else if(type == 7){
        this.$router.push({ path: "/XofferPromotionDetail/" + promotionId + "/0"});
        //this.$router.push(`/XofferPromotionDetail?id=${promotionId}&auth=0`);
      }else if(type == 8){
        this.$router.push({ path: "/IncreasePromotionDetail/" + promotionId + "/0"});
        //this.$router.push(`/IncreasePromotionDetail?id=${promotionId}&auth=0`);
      }else if(type == 9){
        this.$router.push(`/QueryPresellPromotion?value=${promotionId}&auth=0`);
      }else if(type == 10){
        this.$router.push("/GroupDetailPromotion?id=" + `${promotionId}`);
      }else if(type == 12){
        this.$router.push(`/QueryPromotion?value=${promotionId}&auth=0`);
      }
    }

  },
  mounted() {

    let callback2 = res => {
      if (res.code == "0000") {
        this.tableDataData = res.data.rows;
      }
    };
    var param2 = {};
    param2.promotionId = this.$route.params.id;
    param2.start = 1;
    param2.limit = 10;
    //this.utils.request.promotionMerchantProductList(param2, callback2);
  }
};
</script>
<style scoped lang="scss">
@import '@/assets/css/public.scss';
.basicInfo{
  margin-left: 0 !important;
}
.ml8{
  margin-left: 8px !important;
}
.ml40{
  margin-left: 40px !important;
}
.w80{
  width:80px
}
.pdl30{
  padding-left: 30px;
}
.lh25{
  line-height: 25px;
}
.w144{
  width: 144px;
}
.oe{
  overflow: hidden;
  text-overflow:ellipsis;
  white-space: nowrap;
}
.width100{
  width: 97px;
}
.width120{
  width: 150px;
}
.mr10{
  margin-right: 10px;
}
.mb10{
  margin-bottom: 10px;
}
.ml33{
  margin-left: 33px;
}
.pdl30{
  padding-left: 30px;
}
.pdt20{
  padding-top: 20px;
}
.ml10{
  margin-left:10px
}
.pdl15{
  padding-left: 15px;
}
</style>
